package course.examples.Fragments.StaticLayout; import android.app.Activity; import android.app.ListFragment; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ListView; //Several Activity and Fragment lifecycle methods are instrumented to emit LogCat output //so you can follow the class' lifecycle public class TitlesFragment extends ListFragment { private ListSelectionListener mListener = null; private static final String TAG = "TitlesFragment"; // Callback interface that allows this Fragment to notify the QuoteViewerActivity when // user clicks on a List Item public interface ListSelectionListener { public void onListSelection(int index); } // Called when the user selects an item from the List @Override public void onListItemClick(ListView l, View v, int pos, long id) { // Indicates the selected item has been checked getListView().setItemChecked(pos, true); // Inform the QuoteViewerActivity that the item in position pos has been selected mListener.onListSelection(pos); } @Override public void onAttach(Activity activity) { super.onAttach(activity); try { // Set the ListSelectionListener for communicating with the QuoteViewerActivity mListener = (ListSelectionListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener"); } } @Override public void onCreate(Bundle savedInstanceState) { Log.i(TAG, getClass().getSimpleName() + ":entered onCreate()"); super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Log.i(TAG, getClass().getSimpleName() + ":entered onCreate()"); return super.onCreateView(inflater, container, savedInstanceState); } @Override public void onActivityCreated(Bundle savedState) { super.onActivityCreated(savedState); // Set the list choice mode to allow only one selection at a time getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE); // Set the list adapter for the ListView // Discussed in more detail in the user interface classes lesson setListAdapter(new ArrayAdapter<String>(getActivity(), R.layout.title_item, QuoteViewerActivity.mTitleArray)); } @Override public void onStart() { Log.i(TAG, getClass().getSimpleName() + ":entered onStart()"); super.onStart(); } @Override public void onResume() { Log.i(TAG, getClass().getSimpleName() + ":entered onResume()"); super.onResume(); } @Override public void onPause() { Log.i(TAG, getClass().getSimpleName() + ":entered onPause()"); super.onPause(); } @Override public void onStop() { Log.i(TAG, getClass().getSimpleName() + ":entered onStop()"); super.onStop(); } @Override public void onDetach() { Log.i(TAG, getClass().getSimpleName() + ":entered onDetach()"); super.onDetach(); } @Override public void onDestroy() { Log.i(TAG, getClass().getSimpleName() + ":entered onDestroy()"); super.onDestroy(); } @Override public void onDestroyView() { Log.i(TAG, getClass().getSimpleName() + ":entered onDestroyView()"); super.onDestroyView(); } }